package interfaces

import "github.com/gin-gonic/gin"

type ItfApp interface {
	Name() string //app名称

	//Start 开始
	//处理上视为非异步处理
	Start() error

	//Stop 停止，视为同步阻塞处理
	Stop() error
}

type ItfApiServer interface {
	Start() error
	Stop() error
}

// ItfSupportModule 支持模块服务
type ItfSupportModule interface {
	WithModule(t bool)
}

type ItfGinApiServer interface {
	ItfApiServer

	InitRouterForGin(engine *gin.Engine)

	//WithEngine(engine *gin.Engine)
}

type ItfWorker interface {
	Start() error
	Stop() error

	Run() error //运行一次
}
